The present invention relates generally to monitoring and controlling the use of distributed software. More particularly, the present invention is directed to a method and apparatus for tracking the use of software downloaded from a network, such as the Internet.
Computer users have many options for obtaining computer software. They can buy xe2x80x9cfloppy disksxe2x80x9d or xe2x80x9ccompact disksxe2x80x9d containing software applications which they load onto the hard drive of their computer or computer network. With the advent of the Internet, computer users now have the option of acquiring computer software by downloading software modules from a web site on the world wide web. In particular, it is possible to use the Internet to download software from a remote server.
The increasing popularity of downloaded software creates new opportunities for computer software vendors. Like other forms of e-commerce, the convenience associated with a user being able to acquire software from the Internet has the potential to increase sales. Users may also download free limited-use software, so called xe2x80x9cshareware.xe2x80x9d These limited use software modules promote the sales of full-function software packages.
Unfortunately, the Internet also creates new challenges for software vendors. One challenge for software vendors is preventing unauthorized copying and sharing of software. Unauthorized copying or other misuse of downloaded software in violation of copyright laws reduces potential licensing revenues. Additionally, the illicit sharing of corrupted software by third parties may tarnish a company""s image. For example, unauthorized copies of software applications which are corrupted such that the application frequently crashes or performs poorly may harm the reputation of the software vendor.
Conventional systems for the management of licensed software have several drawbacks. Generally speaking, there are several main approaches to licensing downloaded software. One approach is for the software vendor to issue an identification code to the user which may must be entered by the user to permit the user to download the application or enable the use of the downloaded application. Another approach involves adding a monitoring and control program to the software application that automatically terminates the operation of the downloaded software after a predetermined length of time or a predetermined number of uses.
Conventional methods to prevent the unauthorized use of downloaded software are more complicated and less user-friendly than desired. In many cases comparatively complex copy control software is required to prevent hackers from illicitly copying the software. Additionally, in some systems authorization codes may be shared by different users, thwarting the licensing system.
Another challenge for software vendors is to efficiently provide customer service and support for downloaded software. Computer users who purchase downloaded software often do not bother to fill out conventional registration cards or survey forms. Additionally, the vendor typically has no direct personal interaction with individual computer users prior to and subsequent to the sale of the software. This makes it difficult for the software vendor to determine whether users are receiving adequate support to properly use their software.
Still another challenge for software vendors is acquiring the quantity and quality of data on the use of their product required to improve the quality of their product and to efficiently focus their marketing efforts. Software vendors desire to know how many copies of each application are actually used, how often and how long each user uses their software application, what features are most valuable to users, and other types of demographic data. However, it can be expensive and difficult for software vendors to obtain accurate data which would assist them to improve their products or to more efficiently focus their marketing efforts.
What is desired is a new apparatus and method to permit the use of software to be automatically monitored and optionally controlled.
The present invention is directed towards an apparatus and method for monitoring and optionally controlling the use of distributed software, particularly software downloaded from a remote server, such as a server which is present on the Internet. The apparatus of the present invention generally comprises: (a) a server for providing a software program to be downloaded from a remote server, the server configured to generate a first identification code in response to a request by a user to download a software application; (b) a downloadable installer contained within the server for installing downloaded software in a user""s computer in response to the user providing the first identification code and registration data, the installer including: (i) a software application program; and (ii) a tracking assistant for transmitting tracking data indicative of the operation of the application program in the computer; the installer generating a second identification code when the application is installed in the user""s computer; and (c) a database coupled to the server for storing the tracking data; wherein said tracking data transmitted by said tracking assistant module includes said first and said second identification codes.
One object of the present invention is a method to monitor use of a software application. In a preferred embodiment, the software application is downloaded from the Internet.
Another object of the present invention is a method to provide customer support for downloaded software applications.
Still another object of the present invention is a method to automatically create demographic data on software use.
Yet still another object of the present invention is a method to automatically create registration data for downloaded software applications.